产品经理和开发者别打架了!
👆点击“博文视点Broadview”,获取更多书讯
产品经理和开发者之间的关系总被调侃,主要是因为两者在工作中经常不和谐,甚至因此产生了很多互联网段子。
我是开发出身的产品经理,并且擅长调节矛盾,所以在工作中几乎没与开发者发生过大冲突。
但不可否认,产品经理和开发者之间发生矛盾确实是常态,出现分歧的原因有很多,最核心的原因是大多数产品经理不太懂技术,而且沟通能力欠缺。
既然产品经理和开发者之间的矛盾如此深,那么是不是一定不可调和呢?
也不完全是,因为只要是问题,就一定有解决办法。
对于以解决问题为生的产品经理而言,我们应该尽可能地避免这些问题的出现,在无法避免的情况下,正面面对并积极解决问题,这样才能够更好地推进项目。
甚至,那些非常擅长与开发者沟通协作的产品经理会让开发者觉得“你说怎么干我们就怎么干”。
尽管并不是所有的产品经理都能这么厉害,但是让自己在开发者心中形象更好,才能够把项目做得更好。
这是产品经理只要努力尝试做,基本上都可以做到的。
那么,怎样才能更好地与开发者沟通协作呢?
根据我自己的实际工作经验,以及与很多业内朋友沟通的结果,我觉得可以从以下方面做。
提升专业能力
这一点至关重要,不只是针对产品经理,只要是职场人士,在工作中展现出专业能力,才能赢得他人的尊重。
若产品经理的专业能力没达到行业平均水平,开发者就会将你与他接触过的其他产品经理进行对比,一旦觉得你与其他人有差距,就会下意识地对你产生不认可的想法,而且专业能力不足会让你做事情不自信,工作中也更容易犯错。
为了确保与开发者沟通协作顺畅,产品经理提升自身专业能力非常有必要。
产品经理的专业能力有需求收集、需求分析、产品设计等,甚至很多大公司会按照产品专业能力对产品经理进行划分,通常也有严格的量化标准或考核标准。
在产品经理与开发者对接工作的过程中,有几个典型场合:
第一个是,对于不确定的需求,需要让开发者做技术可行性分析;
第二个是,产品经理将需求文档交给开发者实现;
第三个是,开发过程中若出现问题,需要产品经理协助解决。
这几个典型场合都非常考验产品经理的专业能力。
对于第一个场合,当我们产品经理遇到不确定的需求,需要评估技术可行性时,应该把需求的相关背景清晰地讲给开发者,而不应该以“我不管,你就得给我实现”的态度进行交流。
在沟通过程中,必然也会遇到难点,开发者会将其反馈给我们,并且告知我们技术上不可行的原因。
如果开发者用各种方式解释了原因,而产品经理还是没能理解,而是一味地觉得开发者能力不够(当然,确实有这种情况),两方就会爆发冲突。
从这个场景来看,我们产品经理需要提升的专业能力是沟通能力和理解技术的能力。
对于第二个场合,产品经理需要撰写需求文档并进行评审,需求文档也是开发者开发时主要查看的文档,几乎会伴随整个开发过程。
那么需求文档是否清晰、准确地表达出了产品的设计意图及相应的细节,或者说,开发者通过查看需求文档能不能准确理解产品是如何设计的,并且知道如何进行开发,非常重要。
如果需求文档没有撰写得足够清晰、准确,那么势必会造成产品与预期不一致的情况。
虽然在开发过程中产品经理与开发者可以不断地沟通,但是这种沟通不可能24小时不间断,而且有时候开发者也会自认为自己理解得很好而不与产品经理进行沟通,这样很可能导致产品在某个未来的时间点需要大改动。
因此,在保证合理、有效沟通的前提下,产品经理撰写需求文档的能力是专业能力非常重要的组成部分。
对于第三个场合,在开发者根据需求文档实现产品的过程中,经常会出现很多问题需要产品经理辅助解决,能不能及时解决开发者的问题非常重要。
这个过程中比较常见的问题有:
开发者对需求的理解不清晰;
产品方案本身存在漏洞,甚至是不可行的;
项目周期与预估周期存在差距,一般比预估周期需要更长的时间。
当遇到这些问题时,产品经理需要及时且合理地进行处理。开发者理解不清晰的问题比较容易处理,可以当面沟通,但如果是产品方案本身的问题,就需要慎重对待了,这时前面提到的技术理解能力就会发挥重要作用。
如果真的是产品方案有问题,那么将不可避免地需要变更需求。这时开发者肯定会觉得反感,而我们产品经理应该坦诚自己的产品设计存在问题,不要碍于面子硬扛,要立马、及时告知相关开发者哪些需求需要变更,让开发者停下相关功能的开发而做其他工作,然后还需要及时更新需求文档并与开发者再次沟通、确认。
如果项目周期与预估周期存在差距,产品经理需要先与开发者沟通,明确到底是什么原因导致出现问题的,是开发经验不足,是开发人力不够,还是其他问题?针对不同的问题进行针对性的解决。经验不足的话,有可能需要开发者适当加班;开发人力不够的话,产品经理应该从其他部门协调人力资源。需要注意的是,加班解决不了所有的问题,长此以往也会加深产品经理和开发者之间的矛盾。
了解开发者的特点
产品经理提升自己的专业能力,无论是技术理解能力、撰写文档的能力,还是沟通能力,抑或其他能力,都是为了适应工作需要。
互联网项目非常需要团队协作,而产品经理自己能力突出不一定能够保障项目正常推进,如果能够非常了解合作的开发者的特点,工作的推进将游刃有余。
电影中的职场经常存在勾心斗角、落井下石的情况,但在互联网行业中,类似的情况却非常少见,大部分开发者都是比较“单纯”的人,可能每天都处于“两耳不闻窗外事,一心只想撸代码”的状态。
他们可能在偶尔遇到奇怪的需求时有所抱怨,但大部分时间都在埋头写代码,当然也有一些开发者会直接对产品经理发泄情绪,但大多都是对事不对人的。
作为产品经理,为了保障项目正常上线,就需要根据不同开发者的特点,采用不同的策略,与他们沟通。
下面根据开发者的特点进行划分。
被动完成任务型。碰到这种开发者,产品经理需要帮助他们明确任务。这些开发者会很认真地完成自己职责范围内的工作,但开拓意识、主动意识不强,对于他们,明确任务更高效。
技术大牛型。技术大牛又可以分为两类。
一类技术大牛的技术特别厉害,工作经验也很丰富,甚至考虑问题时比产品经理想得更全面,与这类开发者一起工作将非常顺畅。让我印象深刻的技术大牛中有一位iOS开发工程师,他涉猎过多种开发语言,像是全栈工程师,不过最精通的还是iOS开发。他对自己的要求非常高,经常帮助产品经理补充没有考虑到的场景,甚至有点“自虐”倾向,每次开发完产品后会进行疯狂自测,能找出测试人员都找不到的高质量隐藏Bug。与这种人一起工作,真是省心省事。
另一类技术大牛,在技术上同样无可挑剔,但可能有点“恃才傲物”。平时沟通中,他们有可能会对产品需求表现出不屑的态度,尤其是在有些流程或逻辑上存在漏洞时。对于这样的开发者,哪怕他们的态度不是特别好,但我们也要保持良好的态度,并对他们提出的意见表示尊重和感谢。
不爱主动沟通型。这类开发者非常多,大多数开发者长期面对电脑屏幕,经常沉浸在自己的世界里,这种缺乏与人面对面沟通的工作方式,导致他们沟通能力不足。
很多开发者在遇到需求实现方面的问题时,为了避免与产品经理沟通,会按照自己的想法开发,直到测试完成并收到Bug反馈后才进行修改,这其实会导致一些项目问题拖到最后。
对于这类开发者,我们产品经理要更主动,每天都与他们聊聊天,问问他们有没有遇到问题,通过不让对方感到压力的方式,引导他们表达,这样我们才能尽早发现问题。
以上内容摘自《产品经理技术手册》,这是一本给产品经理讲解技术原理的图书,从实际应用场景出发,贴合产品经理的工作和思考习惯,相信这本书可以帮助产品经理更好地完成工作,与开发者实现更好的沟通协作。
限时五折优惠,快快扫码抢购吧!
每日抽奖赠书
奖品《学习的学问》
审核:陈歆懿
我从读者变成了联合作者